1. Field of the Invention
The present invention relates to methods and apparatuses for removing blocking effect caused by quantization error in a motion picture decoder.
2. Description of the Prior Art
In general, the amount of data associated with visual information is so large that its storage would require enormous storage capacity. Although the capacities of utilizing several storage media are substantial, the access speeds are usually inversely proportional to the capacity. Storage and transmission of such data require large capacity and bandwidth. To eliminate the need for large storage capacity, there is an image data compression technique, which reduces the number of bits required to store or transmit image without any appreciable loss of data.
The image data compression removes redundancies contained in image signals. The redundancies comprises a spectral redundancy among colors, a temporal redundancy between successive screens, a spatial redundancy between adjacent pixels within the screen, and a statistical redundancy. Here, a method of image coding for removing the spatial redundancy is transform coding, which divides original input images into small size blocks and processes them individually.
In the transmitter, each blocks of original image is converted by the transform coding and transform coefficients are generated. The transform coefficients are quantized and transmitted to the receiver. In the receiver, the transform coefficients are inverse quantized and converted so that each blocks of original image is regenerated.
FIG. 1 shows a block diagram of a conventional digital motion picture coder/decoder, which is widely used in image processing system such as a High Definition Television (HDTV).
In FIG. 1, coder the motion picture coder comprises a differential image generator (DIG), 10 a discrete cosine transform unit (DCT unit), 11 a quantizer (Q), 12 a variable length coding unit (VLC unit), 19 an inverse quantizer (IQ), 13 an inverse discrete cosine transform unit (IDCT unit), 14 an adder (ADD), 15 a frame memory, a motion estimator, and a motion compensator 18.
In DIG 10 a current image and a predicted image are inputted, and a differential image is generated. The generated differential image is outputted to the DCT unit 11 to be divided into blocks. The DCT unit 11 processes every block into DCT coefficients. The DCT coefficients are then quantized according to a quantization step size in the quantizer 12. The quantized coefficients are coded according to the Huffman Table in the VLC unit 19. The quantized coded coefficients are then transmitted to the channel.
The predicted image inputted to the DIG 10 is obtained as following. First, quantized DCT coefficients from the quantizer 12 are quantized inversely in the inverse quantizer 13. The inverse quantized DCT coefficients are converted to image data in the IDCT 14. The converted image data are inputted to the adder. In the adder, original images are regenerated by using the transformed image data and previous image data from the motion compensator 18. The regenerated images from the adder are stored in the frame memory 16. From the frame memory 16, the previous images are outputted by delaying them in frame units. In the motion estimator, 17 the previous image signals from the frame memory 16 and the current image signals are compared for difference between the two frames, and a motion vector is generated. In the motion compensator, 18 the predicted image having a pixel value similar to the current frame is outputted by shifting the previous image signal outputted from the frame memory 16 as much as the motion vector.
In the motion picture coder 1 like the above, intra-mode frames are coded and transmitted. However, in the case of inter-mode frames, differential signals obtained through the motion estimation and the motion compensation should be coded and transmitted in order to decrease the transmission rate. To solve the above problem, a switch SW is disposed between the DIG 10 and the motion compensator 18. Accordingly, the switch is opened when the intra-frames are inputted, and the switch is closed when the inter-frames are inputted.
The motion picture decoder 2 comprises a variable length decoding unit (VLD unit) 20, an inverse quantizer (IQ) 21, an inverse discrete cosine transform unit (IDCT unit) 22, an adder (ADD) 23, a frame memory 24, and a motion compensator 25.
In the motion picture decoder, 2 the input image signals are decoded by the VLD unit 20. The decoded signals are then quantized inversely by the inverse quantizer 21. The inverse quantized image data are converted inversely by the IDCT unit 22 to be outputted to the adder 23. The image data from the adder 23 are stored and delayed in the frame memory 24. The consequent stored delayed data from the frame memory 24 are outputted to the motion compensator 25 in order to be compensated with reference to the previous images. The compensated signals are then outputted to the adder 23.
The intra-mode frames and inter-mode frames are regenerated according to the switch SW disposed between the adder 23 and motion compensator 25. Namely, in case of the intra-mode frames, the output data from the IDCT unit 22 are directly outputted to the adder 23. However, in case of the inter-mode frames, the output data from the IDCT unit 22 are added to the previous image data from the motion compensator and the resulting data are transmitted to the adder to regenerate a current image signal.
In the decoded digital images like the above, blocking effect occurs near to discontinuous boundary between blocks. The occurrence of this blocking effect is generated during the transform coding process of the divided blocks of digital images. Further, when the quantization step size is expanded during quantization, the quantization error increases and the blocking effect in the discontinuous boundary between blocks becomes even more apparent.